-- card: 2998 from stack: in -- bmap block id: 3719 -- flags: 4000 -- background id: 2725 -- name: ----- HyperTalk script ----- on opencard put the long date into card field "Date" put the time into card field "Time" end opencard On HandleDoc put ((scroll of card field "list"+the clickv - top of card field "list") div textheight of card field "list")+1 into t get line t of card field "names" if it ≠ empty then put PopUpMenu(it,0,item 3 of rect of target,item 2 of rect of target) into res set hilite of target to false if res > 0 then open item res of line t of card field "Docs" with line t of card field "Paths" end if end HandleDoc function whichline return ((scroll of target+the clickv-top of target) div textheight of target)+1 end whichline -- part 7 (field) -- low flags: 01 -- high flags: 0000 -- rect: left=436 top=324 right=342 bottom=509 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 65535 -- font id: 3 -- text size: 12 -- style flags: 2048 -- line height: 16 -- part name: Time -- part 13 (field) -- low flags: 01 -- high flags: 0000 -- rect: left=0 top=325 right=342 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 12 -- style flags: 2048 -- line height: 16 -- part name: Date -- part 14 (field) -- low flags: 01 -- high flags: 4007 -- rect: left=21 top=59 right=298 bottom=249 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: List ----- HyperTalk script ----- on mouseup get line whichline() of card field "paths" if it ≠ empty then open it end mouseup -- part 15 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=22 top=43 right=59 bottom=65 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Add Application ----- HyperTalk script ----- on mouseUp Put "Select an application to add to the list. Cancel to quit." repeat forever put filename("APPL") into launchthis if launchthis is empty then exit repeat lock screen get lastpathcomponent(launchthis) repeat with x = 1 to the number of lines in card field "list" if line x of card field "list" = it then put launchthis into line x of card field "paths" put empty into launchthis exit repeat end if if line x of card field "list" > it then put it & return before line x of card field "list" put return before line x of card field "Docs" put return before line x of card field "names" put return before line x of card field "paths" put launchthis into line x of card field "paths" put empty into launchthis exit repeat end if end repeat if launchthis ≠ empty then put it & return into line x+1 of card field "List" put launchthis into line x+1 of card field "Paths" end if end repeat hide message set scroll of card field "List" to 0 end mouseup -- part 16 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=107 top=43 right=59 bottom=149 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Delete Application ----- HyperTalk script ----- on mouseUp if card field "List" is empty then exit mouseup DoList "Delete","Cancel",card field "List","DIS-+","Choose applications to delete." if the result is empty then exit mouseup else put the result into App lock screen repeat with x = number of items of App down to 1 get item x of app delete line it of card field "List" delete line it of card field "Paths" delete line it of card field "Names" delete line it of card field "Docs" end repeat Set scroll of card field "List" to 0 end mouseUp -- part 42 (field) -- low flags: 81 -- high flags: 0007 -- rect: left=47 top=39 right=264 bottom=486 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Paths -- part 45 (field) -- low flags: 81 -- high flags: 4007 -- rect: left=0 top=31 right=290 bottom=490 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Docs -- part 66 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=66 top=43 right=59 bottom=106 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Add Document ----- HyperTalk script ----- on mouseup if card field "list" is empty then exit mouseup repeat forever put "Please select a document to add. Cancel to quit." put filename() into docpath if docpath is empty then exit repeat DOList select,cancel,card field "List","ONE-+","Select the application it goes with." if the result = empty then exit repeat else put the result into App get lastpathcomponent(docpath) repeat with m = 1 to number of items in line app of card field "names" if item m of line app of card field "names" = it then put docpath into item m of line app of card field "docs" exit repeat else if item m of line app of card field "names" > it then put docpath & "," before item m of line app of card field "docs" put it & "," before item m of line app of card field "names" exit repeat end if end repeat put number of items of line app of card field "names"+1 into ck if last item of line app of card field "names" < it then put docpath into item ck of line app of card field "Docs" put it into item ck of line app of card field "Names" end if end repeat hide message end mouseup -- part 67 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=150 top=43 right=59 bottom=191 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Delete Document ----- HyperTalk script ----- on mouseUp if card field "List" is empty then exit mouseup repeat forever DOList "Choose","Cancel",card field "List","ONE-+","Choose application containing documents." if the result = empty then exit repeat else put the result into me if line me of card field "names" = empty then exit repeat DOList "Delete","Cancel",return & line me of card field "names","DIS+", "Choose a document to delete." if the result is empty then exit repeat else put the result into doc lock screen repeat with x = number of items of doc down to 1 get item x of doc if number of items of line me of card field "names" = 1 then put empty into line me of card field "names" put empty into line me of card field "docs" else delete item it of line me of card field "Names" delete item it of line me of card field "Docs" end if end repeat end repeat hide message end mouseUp -- part 69 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=59 right=75 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 70 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=75 right=91 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 71 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=91 right=107 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 72 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=107 right=123 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 73 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=123 right=139 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 74 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=139 right=155 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 75 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=155 right=171 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 76 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=171 right=187 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 77 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=187 right=203 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 78 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=203 right=219 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 79 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=218 right=234 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 80 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=234 right=250 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 81 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=250 right=266 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 82 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=266 right=282 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 83 (field) -- low flags: 80 -- high flags: 4007 -- rect: left=20 top=65 right=336 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Names -- part 84 (field) -- low flags: 81 -- high flags: 4007 -- rect: left=269 top=65 right=290 bottom=503 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: StackPaths -- part 85 (field) -- low flags: 01 -- high flags: 4007 -- rect: left=276 top=59 right=172 bottom=506 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Stacks ----- HyperTalk script ----- on mouseup get line whichline() of card field "stackpaths" if it ≠ empty then go it end mouseup -- part 88 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=277 top=43 right=59 bottom=351 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Add Stack ----- HyperTalk script ----- on mouseup put "Select a stack to add to the list. Cancel to quit." repeat forever put filename("STAK") into launchthis if launchthis is empty then exit repeat lock screen get lastpathcomponent(launchthis) repeat with x = 1 to the number of lines in card field "stacks" if line x of card field "stacks" = it then put launchthis into line x of card field "stackpaths" put empty into launchthis exit repeat end if if line x of card field "stacks" > it then put it & return before line x of card field "stacks" put return before line x of card field "stackpaths" put launchthis into line x of card field "stackpaths" put empty into launchthis exit repeat end if end repeat if launchthis <> empty then put launchthis into line x+1 of card field "StackPaths" put it & return into line x+1 of card field "Stacks" end if end repeat hide message Set Scroll of card field "Stacks" to 0 end mouseup -- part 90 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=352 top=43 right=59 bottom=427 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Delete Stack ----- HyperTalk script ----- on mouseUp if card field "stacks" is empty then exit mouseup DOList "Delete","Cancel",card field stacks,"DIS+-","Select stacks to delete." if the result is empty then exit mouseup else put the result into stacks lock screen repeat with y = number of items of stacks down to 1 get item y of stacks delete line it of card field "stacks" delete line it of card field "stackpaths" end repeat set scroll of card field "stacks" to 0 end mouseUp -- part 116 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=192 top=43 right=59 bottom=248 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Launch Application ----- HyperTalk script ----- on mouseUp put "Please select an application to launch." put filename("APPL") into launchthis hide message if launchthis ≠ empty then open launchthis end mouseUp -- part 117 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=428 top=43 right=59 bottom=505 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Launch Stack ----- HyperTalk script ----- on mouseUp put "Please select a HyperCard stack to launch." put filename("STAK") into launchthis hide message if launchthis ≠ empty then go launchthis end mouseUp -- part 126 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=426 top=185 right=201 bottom=505 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mouseUp type space with commandkey end mouseup -- part 158 (field) -- low flags: 01 -- high flags: 4007 -- rect: left=276 top=201 right=297 bottom=506 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: DAs ----- HyperTalk script ----- on mouseup get line whichline() of card field "DAs" if it <> empty then domenu it end mouseup -- part 169 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=277 top=185 right=201 bottom=352 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Add DA ----- HyperTalk script ----- on mouseUp GetDaNames DoList "Add DAs","Cancel",namesofDas,"DIS","Select Das to add." if the result = empty then exit mouseup else put the result into MyDA set lockscreen to true repeat with y = 1 to number of items of MyDA repeat with x = 1 to the number of lines in card field "DAs" if line x of card field "DAs" = item y of MyDA then put empty into item y of MyDA exit repeat end if if line x of card field "DAs" > item y of MyDA then put return before line x of card field "Das" put item y of MyDA into line x of card field "DAs" put empty into item y of MyDA exit repeat end if end repeat if item y of MyDA <> empty then put item y of MyDA into line x+1 of card field "DAs" end repeat set cursor to 3 end mouseUp -- part 170 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=353 top=185 right=201 bottom=425 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Remove DA ----- HyperTalk script ----- on mouseUp if card field "DAs" is empty then exit mouseup DOList Delete,Cancel,card field "Das","DIS-+","Choose DAs to delete" if the result is empty then exit mouseup else put the result into DAs lock screen repeat with y = number of items of Das down to 1 delete line (item y of Das) of card field "Das" end repeat Set scroll of card field "Das" to 0 end mouseUp -- part 206 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=6 top=43 right=59 bottom=21 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Documents & Applications ----- HyperTalk script ----- on mouseUp if card field "List" is empty then exit mouseup answer "Clear applications and documents?" with "OK" or "Cancel" if it = "OK" then put empty into card field "List" put empty into card field "Docs" put empty into card field "Names" put empty into card field "Paths" set scroll of card field "list" to 0 end if end mouseUp -- part 204 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=260 top=43 right=59 bottom=276 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Stacks ----- HyperTalk script ----- on mouseUp if card field "Stacks" is empty then exit mouseup answer "Clear stacks?" with "OK" or "Cancel" if it = "OK" then put empty into card field "Stacks" put empty into card field "StackPaths" set scroll of card field "stacks" to 0 end if end mouseUp -- part 205 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=260 top=185 right=201 bottom=276 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Desk Accesories ----- HyperTalk script ----- on mouseUp if card field "DAs" is empty then exit mouseup answer "Clear desk accessories?" with "OK" or "Cancel" if it = "OK" then put empty into card field "DAs" set scroll of card field "Das" to 0 end if end mouseUp -- part 214 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=209 top=282 right=298 bottom=231 -- title width / last selected line: 0 -- icon id / first selected line: 29332 / 29332 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: ----- HyperTalk script ----- on mousedown HandleDoc end mousedown -- part 217 (field) -- low flags: 81 -- high flags: 0007 -- rect: left=5 top=25 right=320 bottom=509 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 3 -- text size: 10 -- style flags: 0 -- line height: 14 -- part name: Info ----- HyperTalk script ----- on mouseup visual zoom in go to this card hide the target end mouseup -- part contents for card part 13 ----- text ----- Monday, January 9, 1989 -- part contents for card part 7 ----- text ----- 9:00 AM -- part contents for card part 217 ----- text ----- Directions: To launch documents, their applications, stacks and DAs, you must first add them using the add ("+") buttons directly above each list. Before adding documents, you must have already added the application to which they belong. Documents will appear in a pop-up menu when you hold the mouse button down on the document button to the right of each application. FinderHype keeps track of all the paths to the stacks, documents and applications so that they will launch perfectly each time. FinderHype will not permit you to add more than 1 application, document (per application), DA, or stack of the same name. When you try to do so, the path of the application, document or stack will be updated. To launch an application, stack, or DA, simply click on its name in the scrolling list. To launch a document and an application together, choose a document from the pop-up menu to the right of the application. The application will automatically launch with the document. Use the "remove"(-) buttons to remove applications, stacks, DAs and documents from their respective lists. Shift click to select more than one application, stack or DA to remove. Optionally, you can click on the trash can icon at the top left of each list ( applications, stacks, and DAs) to remove all of the items contained in that list. When you remove an application from the list, its documents are removed as well. Use the launch buttons on the top right of the applications and stack list to quickly launch an application or stack not added to your list. Use the menubar button on the top right of the da list to toggle the menubar. The FinderHype menu will perform some of the standard Finder operations such as renaming and deleting files. Basic Info: The applications and their documents, stacks and DAs are inserted in alphabetical order. Use the scroll bars to move up and down through the lists. The pop-up menu xfcn does not take into account the screen size so the pop-up menu will appear above where it should on Macs with large moniters. Kudos: Many of FinderHype's abilities would not be possible except for the availability of some choice XCMDs and XFCNs. I wish to thank Steve Drazga for the Developer stack from which several XCMDs and XFCNs were extracted as well as the XCMD and XFCN authors themselves: Dewi Williams: Rename File XFCN, Delete File XFCNs Jim Henderson: Restart XCMD Will Cate: Shutdown XCMD Andrew GilMartin: PopUpMenu XFCN Steve Maller: FileName XFCN James L. Paul: DoList XCMD Aron Roberts: GetDANames XCMD Menus For HyperCard: Michael Long, Nine to Five Software Copy XFCN: J. Brad Hicks FinderHype: Designed and Created by Jerry C. Welsh, Jr., Triangle MacConsultants, Inc. Thanks to Mark and Barry for beta testing in the wee small hours. •Custom databases (including HyperCard) •On and off-site training on most Mac applications •Networking •System analysis and installation •Documentation •Triangle MacConsultants, P.O. Box 13366, RTP, NC 27709 (919) 941-5505•